H5混合模块
APP 内嵌 H5 页面如果也需要进行数据采集,H5 页面需要集成 Web JS SDK
若需要 H5 页面 Web JS SDK 采集的数据与 APP 中 GIO SDK 采集的用户等数据打通,请参考 Hybrid内嵌页打通插件
如果 APP 集成的是无埋点 SDK, 不需要做设置,SDK 初始化后会自动注入桥接代码,实现数据打通;
如果 APP 集成的是埋点 SDK,则需要您添加 Hybrid 依赖
info
使用时注意模块版本需要与采集 SDK 版本保持一致
- Swift Package Manager集成
- Cocoapods集成
模块集成
- 添加 GrowingModule_Hybrid Package
- 一般情况下,Hybrid 将自动注入进行数据采集,如需额外配置,可在目标文件中,导入
import GrowingModule_Hybrid
,并调用下列配置接口
模块配置
Hybrid 模块中提供了配置接口:
1.自动对所有 webView 注入 Hybrid SDK
配置接口 | 参数类型 | 默认值 | 说明 |
---|---|---|---|
autoBridgeEnabled | Bool | true | 是否对所有 webView 自动注入 Hybrid SDK |
示例
let hybrid = Hybrid.sharedInstance()
hybrid.autoBridgeEnabled = false
2.单个 webView 启用 Hybrid 注入 (白名单模式)
enableBridge(_ webView: WKWebView)
在 autoBridgeEnabled 为 false 时,对单个 webView 启用 Hybrid 注入,请在主线程调用
参数 | 参数类型 | 说明 |
---|---|---|
webView | WKWebView | 当前 webView 实例 |
示例
let hybrid = Hybrid.sharedInstance()
hybrid.enableBridge(webView)
3.单个 webView 关闭 Hybrid 注入 (黑名单模式)
disableBridge(_ webView: WKWebView)
在 autoBridgeEnabled 为 true 时,对单个 webView 关闭 Hybrid 注入,请在主线程调用
参数 | 参数类型 | 说明 |
---|---|---|
webView | WKWebView | 当前 webView 实例 |
示例
let hybrid = Hybrid.sharedInstance()
hybrid.disableBridge(webView)
4.查看 webView 是否可注入
isBridgeEnabled(_ webView: WKWebView)
判断当前配置下,webView 是否可注入
参数 | 参数类型 | 说明 |
---|---|---|
webView | WKWebView | 当前 webView 实例 |
示例
let hybrid = Hybrid.sharedInstance()
let isBridgeEnabled = hybrid.isBridgeEnabled(webView)
5.重置 Hybrid 注入
resetBridgeSettings()
重置 Hybrid 注入配置,请在主线程调用
示例
let hybrid = Hybrid.sharedInstance()
hybrid.resetBridgeSettings()
模块集成
- 在您的 Podfile 文件中添加
pod 'GrowingAnalytics/Hybrid'
打开终端,切换到项目目录,执行 pod install
或 pod update
- 一般情况下,Hybrid 将自动注入进行数据采集,如需额外配置,可在目标文件中,导入
#import "GrowingHybridModule.h"
,并调用下列配置接口
模块配置
Hybrid 模块中提供了配置接口:
1.自动对所有 webView 注入 Hybrid SDK
配置接口 | 参数类型 | 默认值 | 说明 |
---|---|---|---|
autoBridgeEnabled | BOOL | YES | 是否对所有 webView 自动注入 Hybrid SDK |
示例
[GrowingHybridModule sharedInstance].autoBridgeEnabled = NO;